import book.BookList;
import user.AdminUser;
import user.NormalUser;
import user.User;

import java.util.Scanner;

public class Main {
    public static User login(){  //登录的意思
        Scanner scanner = new Scanner(System.in); //从键盘获取  //Scanner是一个工具类，用于从输入流（如键盘输入）
        System.out.println("请输入你的姓名");
        String name = scanner.nextLine(); //读取一行输入的字符串
        System.out.println("请输入你的身份： 1- 》管理员  0 -》普通用户");
        int choice = scanner.nextInt();   //从输入流中读取一个整数类型的输入
        if(choice == 1){
            return new AdminUser(name);  //管理员用户
        }else{
            return new NormalUser(name); //普通用户
        }
    }

    public static void main(String[] args) {
        BookList bookList = new BookList();
        User user = login();  //这里如果选择1，就是管理员菜单
        while (true){
            int choice = user.menu();  //这里就是管理员菜单
            //user是哪个对象 choice是几  能够确定：我能够操作哪个对象哪个方法
            //通过这两个变量 可以确定了 但是怎么联系起来呢
            // 1 想让双方 存好 对应自己的操作
            user.doOperation(choice,bookList); //1，调用的是书架
        }
    }

}
